home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
PInterfaces
/
KeyboardPlugin.p
< prev
next >
Wrap
Text File
|
1996-05-01
|
4KB
|
132 lines
{
File: KeyboardPlugin.p
Contains: Required interface for Keyboard Family-Plugins
Version: Technology:
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
}
{$IFC UNDEFINED UsingIncludes}
{$SETC UsingIncludes := 0}
{$ENDC}
{$IFC NOT UsingIncludes}
UNIT KeyboardPlugin;
INTERFACE
{$ENDC}
{$IFC UNDEFINED __KEYBOARDPLUGIN__}
{$SETC __KEYBOARDPLUGIN__ := 1}
{$I+}
{$SETC KeyboardPluginIncludes := UsingIncludes}
{$SETC UsingIncludes := 1}
{$IFC UNDEFINED __TYPES__}
{$I Types.p}
{$ENDC}
{$IFC UNDEFINED __KEYBOARD__}
{$I Keyboard.p}
{$ENDC}
{$IFC UNDEFINED __NAMEREGISTRY__}
{$I NameRegistry.p}
{$ENDC}
{$PUSH}
{$ALIGN MAC68K}
{$LibExport+}
{$IFC FOR_SYSTEM8_PREEMPTIVE }
{
####################################################################################
Constructor/Destructor Messages
####################################################################################
}
TYPE
KeyboardPluginInitPtr = ProcPtr; { FUNCTION KeyboardPluginInitPtr(theID: KeyboardID; VAR theDeviceRecord: KeyboardDeviceRecord; (CONST)VAR theRegEntryRef: RegEntryRef): OSStatus; C; }
{ normal termination }
KeyboardPluginFreePtr = ProcPtr; { FUNCTION KeyboardPluginFreePtr: OSStatus; C; }
{ error condition termination }
KeyboardPluginEjectPtr = ProcPtr; { FUNCTION KeyboardPluginEjectPtr: OSStatus; C; }
{
####################################################################################
Control Messages
####################################################################################
}
KeyboardPluginStartI0Ptr = ProcPtr; { FUNCTION KeyboardPluginStartI0Ptr: OSStatus; C; }
KeyboardPluginHaltIOPtr = ProcPtr; { FUNCTION KeyboardPluginHaltIOPtr: OSStatus; C; }
{
####################################################################################
Functional Messages
####################################################################################
}
KeyboardPluginValidateHardwarePtr = ProcPtr; { FUNCTION KeyboardPluginValidateHardwarePtr: OSStatus; C; }
KeyboardPluginGetModifierKeyStatePtr = ProcPtr; { FUNCTION KeyboardPluginGetModifierKeyStatePtr(VAR modifiers: KeyboardModifiers): OSStatus; C; }
KeyboardPluginLEDStatusPtr = ProcPtr; { FUNCTION KeyboardPluginLEDStatusPtr(which: KeyboardLEDSelector; VAR state: KeyboardLEDState): OSStatus; C; }
KeyboardPluginSetLEDPtr = ProcPtr; { FUNCTION KeyboardPluginSetLEDPtr(which: KeyboardLEDSelector; state: ByteParameter): OSStatus; C; }
KeyboardPluginGetNextKeyPtr = ProcPtr; { FUNCTION KeyboardPluginGetNextKeyPtr(VAR next: LowLevelKeyEvent): OSStatus; C; }
KeyboardPluginGetDeviceModePtr = ProcPtr; { FUNCTION KeyboardPluginGetDeviceModePtr(VAR theMode: KeyboardDeviceMode): OSStatus; C; }
KeyboardPluginSetDeviceModePtr = ProcPtr; { FUNCTION KeyboardPluginSetDeviceModePtr(theMode: KeyboardDeviceMode): OSStatus; C; }
{
####################################################################################
Dispatch Table Definition
####################################################################################
}
CONST
kKeyboardPluginDispatchTableVersion1 = $0001;
kKeyboardPluginDispatchTableCurrentVersion = $0001;
TYPE
KeyboardPluginDispatchTablePtr = ^KeyboardPluginDispatchTable;
KeyboardPluginDispatchTable = RECORD
version: INTEGER;
PlugInInit: KeyboardPluginInitPtr;
PlugInFree: KeyboardPluginFreePtr;
PlugInEject: KeyboardPluginEjectPtr;
PlugInStartIO: KeyboardPluginStartI0Ptr;
PlugInHaltIO: KeyboardPluginHaltIOPtr;
PlugInValidateHardware: KeyboardPluginValidateHardwarePtr;
PlugInGetModifierKeyState: KeyboardPluginGetModifierKeyStatePtr;
PlugInLEDStatus: KeyboardPluginLEDStatusPtr;
PlugInSetLED: KeyboardPluginSetLEDPtr;
PlugInGetNextKey: KeyboardPluginGetNextKeyPtr;
PlugInGetDeviceMode: KeyboardPluginGetDeviceModePtr;
PlugInSetDeviceMode: KeyboardPluginSetDeviceModePtr;
END;
{$ENDC}
{$ALIGN RESET}
{$POP}
{$SETC UsingIncludes := KeyboardPluginIncludes}
{$ENDC} {__KEYBOARDPLUGIN__}
{$IFC NOT UsingIncludes}
END.
{$ENDC}